
                                            Fractal Editor

_________________________________________________________________________

Introduction
As mentioned previously, EasyFractal is not a paint or drawing program in the classical sense of the word. Instead, the program's purpose is to depict mathematical objects (fractals of the Mandelbrot or Julia set type) in a graphical format. The Fractal Editor thus does not feature the classical functions of a drawing or paint program (pencil, brush, sprayer, etc.) but makes it possible to modify the parameters that determine the appearance of the picture. The actually two-dimensional data can also be interpreted in three-dimensionally.

_________________________________________________________________________

Structure 
The Fractal Editor is located inside of a so-called floating window. This floating window is always displayed on top of all the other document windows allowing easy access to the functions of the Fractal Editor at any time. The Fractal Editor always displays the parameters of the uppermost fractal window. 

The lower part contains four buttons with the following meaning: 

Default
Only the parameters currently visible in the Editor are set to default values.

Default All
All parameters of the Fractal Editor are set to default values. The default parameters depend on the selected function and whether the fractal is a Mandelbrot or Julia set.

Undo
This button has the same function as the menu option of the fractal menu (same name). Use this button to undo the last calculation. EasyFractal supports up to 64 undo operations!

Execute
A new fractal is calculated using the specified parameters. This command can also be triggered by pressing the RETURN or ENTER key. 

Use the series of tabs located in the upper part of the window to switch between different sections of the Editor. The Fractal Editor consists of six sections, which we will now discuss in detail.

_________________________________________________________________________

General
General settings such as name, image size, and others can be set in this section. 

Fractal Name 
Use this field to change the displayed name of the fractal. If you want to calculate a new fractal, EasyFractal uses the default name "Mandelbrot" for a Mandelbrot set and "Julia" for a Julia set. If the name has already been assigned for a different window, a consecutive number is added to the name.

New Window 
If this checkbox is activated, a new window is opened for the calculation. Without a checkmark in this box, the calculation takes place in the same window from which the parameters were taken. 
The menu items New ... and Generate Julia Set activate this checkbox automatically.

Interpolation Range 
Intermediate interpolation points are determined to enable rapid calculation. A larger interpolation range shortens the computing time, but the image is less detailed. This means only values between 1 and 8 are useful. The optimal value depends somewhat on the fractal itself as well. The default setting 4 usually delivers rather good results. 

Iterations 
The number of max. iterations indicates the maximum runs through the calculation loop for one image point until the process is interrupted and the color is set to the max. color value (= white in default palette). To find interesting pictures, we recommend setting the value to initially 256 or less since the calculation is then performed more quickly. Once you have discovered a pretty area still containing some white areas, you can improve the detail level by entering a higher value (e.g., 1024 or 2048). 
If the number of iterations is higher than the max. available colors, the colors are repeated in an oscillating fashion. This has the advantage that a 3D image has wavy instead of sharp edges (e.g., craters or volcanos).

Real Width and Height 
This refers to the inner dimensions of the fractal window (in pixels).

Virtual Width and Height 
The default setting used by EasyFractal for both fields is 32766 (max. value). Enter the size of the virtual window in pixels of which only a fraction is visible in the real window on screen. Smaller values have the effect that the finished image is not quite as sensitive to the movements of the window slide bars; however, usually these values do not have to be changed.

Zoom Factor 
Zooming into a picture is done in specific increments or steps. This field indicates the zoom factor for each increment. The higher the number, the larger the zoom factor. A number smaller than 1 reverses the process.

_________________________________________________________________________

Function
As already mentioned, fractals are generated with special mathematical processes. Use this area to set all of the required parameters.

Mandelbrot or Julia Set 
Use this radio button to specify whether to calculate a Mandelbrot or Julia set. If the Generate Julia Set menu item is activated, this button is automatically set to Julia Set.
Images made up entirely of Mandelbrot sets are usually not too impressive. Of interest are only the sectional enlargements from the turbulent margin areas of the Mandelbrot sets. The Julia sets derived from these border areas are frequently aesthetically very pleasing constructs.

Function 
This popup menu offers you 8 different iteration functions. The applied iteration formula is indicated in an abbreviated form for those who are interested in mathematics. The first formula represents the simplest of all conceivable iterations within the complex number plane still delivering fractal structures. This means that the calculation speed is here the fastest. However, even the third, fourth, and seventh iteration can be executed relatively fast because it employs only basic mathematical functions (+,-,*,/).
The second, fourth, fifth, and eighth iteration requires some patience,especially when using an older computer model since the calculation of the tangent, the general power, and the trigonometric functions takes quite a bit longer for complex numbers. 
The mouse cursor changes to the Berkhan cursor during the calculation process. This tells you that the program is working. Please don't think that your computer has crashed or is frozen if the Berkhan cursor is visible for a longer time. If the calculation is estimated to take longer than 2 seconds, a progress bar is displayed as well allowing you to estimate the remaining calculation time. 
Some functions also require additional parameters (P0 and P1). This is indicated if these parameters are explicitly listed in the iteration formula in the popup menu. If this is the case, the parameters have to be set to practical values (see below) or you will have nothing but white areas. 

Note to individuals Interested in Mathematics: Only the functions 1, 2, 5, and eight are complex functions of a complex variable. The remainder are any mappings of |R2 to |R2. Since the main objective is not to gain mathematical knowledge but to generate pretty and interesting pictures, we have also incorporated these iterations since they lend a very different appearance to fractals than the truly complex functions.

P0 and P1 
These are freely selectable parameters used to modify the formulas mentioned above. The upper 3 functions do not have any parameters. That is the reason you cannot enter anything into these fields when one of these functions was selected from the popup menu. 
Since it is somewhat difficult to find suitable parameters for a selected function, it is best to first click on Default and then to try finding other forms by modifying the parameters.

_________________________________________________________________________

Parameters
Use this area to specify additional parameters such as the overall zoom or position of the image within the complex number plane.

Overall Zoom 
Specify a relative zoom (enlargement) in percent. The scale is set in such a way that 
the classical Mandelbrot's fractal fits exactly into the window when choosing a size of 320 x 200 pixels. 

Note: Starting with an Overall Zoom of 10 billion percent, the image starts to blur since computers can only calculate using a finite accuracy (approx. 15 to 16 decimal places) and can no longer differentiate between two neighboring points if the zoom is extremely high. 

Escape Condition
Use this popup menu to select from 6 different escape conditions. This works approximately like this: The iteration formula controls a ball bouncing around on a table. The number of bounces needed by the ball to disappear over the table's edge is counted. This is then the color index for the point where the ball started bouncing.
The escape condition now determines different table shapes, which has a direct impact on the fractals being generated.

Circle
This is the most commonly used form already popular with EasyFractal 2 users.

Hyperbola
The table is marked off with hyperbolas.

REAL Band
The table is shaped like an infinite ribbon running parallel to the real axis.  

IMAG Band
The table is shaped like an infinite ribbon running parallel to the imaginary axis. 

Quadrat
The table has the shape of a square. 

Cross
The table has the shape of a cross. 

Important: The higher the numbers input for Max. Radius the less impact the different escape conditions have on the fractal that is being formed. Values between 1 and 10 yield good results.


REAL and IMAG of the Center 
As already mentioned, the calculation of Mandelbrot and Julia sets requires a complex number plane. The classical Mandelbrot's fractal as displayed after the start of the program, has the point (-0.6,0) exactly in the center of the image. However, when zooming into the image or using the scroll bars to move the section, another point moves into the center of the window. The coordinates of this point are displayed in these two fields. 

REAL and IMAG of C 
These two fields are only relevant for Julia sets. A Julia set is defined for each point of the Mandelbrot set and these two fields contain exactly the REAL and IMAG portion of the complex constant C. 
Enter any other values for this constant here (maybe obtained from other sources such as magazines or books) and then use them to calculate the associated fractal. 

Max. Radius
This field gives you the opportunity to change the appearance of the generated images. Infinite or at least a very large number should always be listed here (from the viewpoint of pure mathematics) but since our concern is with interesting images and not mathematics you can also try out other values. For example: 1.4 with Julia sets of Z^2 results in very spatial structures.The rule of thumb is that large numbers yield a baroque appearance of images, while small numbers result in less ornate areas with smooth borders.

Min. Radius
This field functions similar to Max. Radius. Use it to define an additional termination condition that makes it possible to generate structures in those areas that otherwise would remain monochrome (e.g., the inside of MandelbrotÕs Fractal). A hole is drilled through our imaginary table the ball can use as well.

For Pros: The maximal radius determines when the algorithm is terminated. In case of a circular escape condition this is exactly when the result of the iteration has a higher absolute value than the maximal radius. The number of required steps determines the color index. The same is true for the minimal radius.

Eccentricity
Eccentricity determines the deviation from the circular shape (eccentricity = 1). Values smaller than one (ellipsis flattened horizontally) as well as values higher than one (ellipsis flattened vertically) may be entered.

_________________________________________________________________________

Rotation
Some fractals appear to be objects from the real world (e.g., a tree, a fountain, etc.); the object, however, seems to be placed on its side or is slanted. Use this part of the Fractal Editor to rotate the image. Instead of rotating the individual pixels -- as it is the case with normal paint programs -- the complex number plane itself is rotated; the angle of rotation is thus already considered when the fractal is being calculated. This has the advantage that display errors caused by the rotation are eliminated but it does require a new calculation of the entire image anytime the angle of rotation changes. 

REAL and IMAG of the Rotation Center 
Use these two edit fields to specify the center of rotation. The traditional Mandelbrot's fractal depicted after the start of the program has the center of rotation located in the point  (-0.6,0), which corresponds exactly with the center of the window. However, when scrolling to the left or the right, the center of rotation shifts accordingly and the image would no longer be rotated by the center of the window when the function ROTATE is applied. 

New Rotation Center 
In most cases, it is not desirable to rotate an image using a center of rotation located somewhere else than the center of the window or even outside of the visible window section. To save you the work of repeatedly determining the window center, followed by entering the values into the corresponding fields, we have implemented this button. Just one click and EasyFractal automatically calculates the point within the complex number plane of the exact center of the window and then enters this value into the corresponding fields.

Rotation Angle in Deg. 
Enter the desired angle of rotation using a number or the slider bar. Positive values rotate the fractal to the right, negative numbers to the left. 

Caution: The slider bar provides so-called live feedback, meaning the rotation is executed immediately when moving the slider. Since the fractal has to be recalculated for every rotation, unpleasant delays might be the result when large images, complicated iteration formulas, or slow computers are involved. For these cases, we recommend entering the angel of rotation manually and then to confirm it with the RETURN or ENTER key or by clicking on the slider bar and applying a rotation in steps of 10 degrees.

_________________________________________________________________________

3D
A color index is assigned to every point within the plane when calculating fractals within the complex number plane. It stands to reason to interpret this index also as information about the height. This results in three-dimensional landscapes with flat hills, mountain peaks, and structures resembling craters. Suitable colors will bring out these 3D landscapes even more plastically. 
The lower four settings can be indicated using the edit fields as well as the sliders with live feedback. 

Caution: The same applies to the sliders as discussed for the Rotation. In case of large images or older computers, true live feedback is not possible since the calculation time is too long. It is better to enter the parameters manually in these type of cases. Then confirm the values with the ENTER or RETURN key or click on the slider bar to change the parameters gradually. 

3D Display 
Use this button to activate the three-dimensional display. Click again to return to a two-dimensional picture.

Tip: Due to technical reasons, the three-dimensional display always results in an area at the lower edge that appears to be cut. The reason for this is that EasyFractal cannot obtain any 3D information for this points from the underlying fractal. To solve this problem just calculate the fractal in a slightly higher window and then leave off the lower area by importing only the upper portion via the clipboard into a traditional paint program). 

Transparent 
Some fractals yield very interesting pictures when elevating the points to the third dimension without filling the resulting gaps. This will result in a transparent, three-dimensional depiction. Use this checkbox to activate or deactivate the transparent option. 

Note: The transparent display is calculated faster than the filled area display and can thus also be used for an overview over the picture. 

Negative 
Pixels of a 3D display are usually pulled to the top. If this checkbox is activated, the projection is towards the bottom. This results in structures resembling canyons and not mountains. 

View Angle 
Since our computer screens are only two-dimensional, a three-dimensional display is always a projection onto a two-dimensional area. Use this option to specify the viewing angle for these landscapes. The value 0 degrees means you are looking straight down onto the landscape from the top, while 90 degrees means you are inside of the landscape. 

Peak 
The peak indicates the difference in "altitudes." This is a relative value ranging from 0 to 100. The value 0 results in a flat landscape. while 100 maximizes the altitude differences. 

Smoothing 
Most fractals feature points with very different color indices in close proximity to each other. In these cases, a 3D display would yield a very fissured and jagged and somewhat unreal landscape. That is the reason the image is smoothed out before it is actually displayed in 3D. Set the level of smoothing here. A value of 0 means no smoothing, while 20 represents a maximal leveling action. 

Pixel Size 
This field will accept data only if the checkbox Transparent has been activated as well. The pixels are then enlarged corresponding to the setting. Interesting effects can be achieved with this for some pictures. 

_________________________________________________________________________

FS
This tab is available starting with EasyFractal 3.0. The functions offered on this tab can be used to fragment the otherwise monochrome areas of the normal fractals into many sub-areas with every sub-area spotting its own color. The shape of the sub-areas matches the shape of the original shape. This yields some very vivid fractals with 3-D appearance if a suitable palette is utilized.
Of course, there is a catch - defining a matching color for each added area requires much larger palettes. The expansion function of the Palette Editor however provides a very effective tool for this purpose.
Determining the sub-areas also requires many more calculations and that can be a disadvantage when using slower computers or complex iteration formulas - we thus recommend starting your search for suitable fractals without fine structure effect.

Caution: The sliders in this dialog do not display live feedback, meaning the settings are not effective until you click on Execute.

Fine Structure
Use this button to activate the fine structure display. This is a live feedback button - the function is immediately executed using the settings specified in this dialog. You do not need to click on Execute..

A popup menu is located next to the fine structure activation button. This menu offers options for defining the shape of the sub-areas. Settings here should generally always match those for Escape Condition. In special cases, however, a different setting might prove useful. If the menu is set to Default, the setting specified for the escape condition function is automatically applied.

Partition
This field determines the partition factor of the areas. The number of sub-areas is always uneven due to reasons of symmetry and is calculated as follows:

Number of sub-areas = 2 * partition + 1

The higher the value for Partition the finer the color progressions but the longer the time needed for the calculation. We thus recommend starting with a small partition value when searching for nice images and - if successful - to increase the Partition.

Note: The larger an image the larger the partition that should be selected. This is of special importance when Saving as Picture or when Printing.

Oscillator 1 
Use this parameter to repeat the Partition within an area several times. Oscillator 1 has an affect on all areas determined by the Max. Radius.

Oscillator 2 
This parameter's function resembles Oscillator 1, with the difference that it affects all areas determined by Min. Radius.

Oscillator 3 
Affects all areas determined neither by Min. Radius nor by Max. Radius. Speaking in terms of the bouncing ball image, this means all those points from which the ball does not exit the table even after the specified maximal number of bounces (Iterations) has been executed.
The effect of this oscillator is not as reliably to predict as the effect of the other two. Sometimes there is no effect at all because the corresponding areas are not found in the image.

Just experiment a little and try out all three oscillators on the standard image shown after program start.

Automatically Expand Palette
This checkbox should be activated at all times. If active, EasyFractal automatically adjusts the color palette to match the fine structure. Special effects, however, might require setting different values for Expansion and Partition. Deactivate this checkbox as needed or desired.

